package com.ship.dispatch.vo.orderPay;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

@Data
public class SpPaymentOrderDetailVO {
    /**
     * 订单主键
     */
    private Long id;
    /**
     * 订单编号
     */
    private String payOrderNumber;

    /**
     * 订单类型
     */
    private Integer orderType;

    /**
     * 订单类型字符串
     */
    private String orderTypeStr;

    /**
     * 航次号
     */
    private String voyageNo;

    /**
     * 关联合同id
     */
    private Long contractId;

    /**
     * 关联合同名称
     */
    private String contractName;

    /**
     * 关联合同地址
     */
    private String contractAddress;

    /**
     * 申请人
     */
    private String applicantPeople;

    /**
     * 经办人
     */
    private String handlePeople;

    /**
     * 审批人
     */
    private String approvedPeople;

    /**
     * 订单状态（1：未审核、2：已审核、3：已付款）
     */
    private Integer orderStatus;

    /**
     * 订单状态字符串（1：未审核、2：已审核、3：已付款）
     */
    private String orderStatusStr;

    /**
     * 合同类型（1：船舶代理合同、2：保险合同（货险）、3：第三方计量合同、4：租金相关合同--船运合同、5：加油合同、6：保险合同（人险）、7：资源合同（主合同）、8：资源合同（备忘录）、9：律师合同、10：船舶经纪人合同）
     */
    private Integer contractType;

    private List<Object> data = new ArrayList<>();
//    /**
//     * 装载船代预付款/卸载船代预付款相关表
//     */
//    private AdvanceChargesTitleVO advanceChargesTitleVO = new AdvanceChargesTitleVO();
//    /**
//     * 货险相关--预保单信息相关表
//     */
//    private AdvancePolicyTitleVO advancePolicyTitleVO = new AdvancePolicyTitleVO();
//    /**
//     * 货险相关--实际保单信息相关表
//     */
//    private ActualPolicyTitleVO actualPolicyTitleVO = new ActualPolicyTitleVO();
//    /**
//     * 装载第三方计量费用/卸载第三方计量费用信息相关表
//     */
//    private ThirdPartyitleVO thirdPartyitleVO = new ThirdPartyitleVO();
    /**
     * 附件信息集合
     */
    private List<OrderAttachmentsVO> orderAttachmentsVOS = new ArrayList<>();

    /**
     * 船舶名称
     */
    private String shipName;
    /**
     * 加油时间
     */
    @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
    private Date refuelTime;

    /**
     * VLSFO加油量（吨）
     */
    private String vlsfoOilQuantity;

    /**
     * VLSFO油价（美元/吨）
     */
    private BigDecimal vlsfoOilPrice;

    /**
     * LSMGO加油量（吨）
     */
    private String lsmgoOilQuantity;

    /**
     * LSMGO油价（美元/吨）
     */
    private BigDecimal lsmgoOilPrice;

    /**
     * 燃油供应商
     */
    private String fuelSupplier;
}
